avatar-img

Nature of Code閱讀心得與Python實作

49公開內容

Daniel Shiffman所著「The Nature of Code」一書的閱讀心得,並用python及pygame來實作範例及練習題。

原書網頁版:https://natureofcode.com/

全部內容
免費與付費
最新發佈優先
這一節要模擬的是擺(pendulum)這個裝置中,構造最簡單、具有理想化性質的單擺(simple pendulum)。
Thumbnail
我們曾經利用sin函數來模擬彈簧吊錘(bob)的運動,雖然這樣子的做法程式很容易寫,但是卻沒辦法模擬彈簧吊錘受到如風力、重力等環境中其他作用力的影響下,在空間中的運動狀況。要克服這樣子的問題,就不能再倚靠sin函數,而必須改用能夠用來計算彈簧彈力的虎克定律(Hooke's law)。
Thumbnail
在x軸上依序取一些點,然後把這些點以及其對應的sin函數的值所構成的二維座標點畫出來時,就可以看到由這個sin函數所產生的像波一樣的圖案,也就是波型(wave pattern)。不同樣式的波型,可以用來設計生物的軀幹或肢體,也可以用來模擬像水這類柔軟的表面。
Thumbnail
藉由設定振幅、頻率、週期等性質,我們可以模擬出真實世界中的振盪現象。其實,用稍微簡單一點的方式來處理,依舊可以得到相同的效果。
Thumbnail
這一節談的是振盪(oscillation)。日常生活中,隨處都可見到振盪的現象。例如,彈奏弦樂器時,弦的振動、盪鞦韆時的來回擺動、音叉的振動、單擺的來回擺動、彈簧的振動等。除了這些眼睛看得到的之外,麥克風、交流電、收音機、手機等許許多多的電子產品,也都是利用振盪的原理來運作的。
Thumbnail
除了直角座標系統外,極座標(polar coordinate)系統是另一種相當有用的座標系統。
Thumbnail
在模擬運動中的物體時,如果物體是圓形,那就不需要考慮旋轉的問題,畢竟不管怎麼轉,圓還是圓,看起來都一樣。但是,如果物體不是圓形而是其他形狀呢?
這一節主要在談三角函數和向量的分量、角度間的關聯性。這個關聯性在向量的應用上,非常重要。
角運動(angular motion)指的是物體的旋轉運動。物體進行直線運動時,可以用速度和加速度來描述它的運動。同樣的做法也可以運用在描述角運動上,我們可以用角速度(angular velocity)和角加速度(angular acceleration)來描述角運動。
角度有兩種單位,一個就是大家耳熟能詳的「度」(degree),記做 °;另一個是「弳度」(radian),也翻譯成「弧度」,記做rad。當使用弳度來度量角度的大小時,通常會把rad省略,不寫出來。